package sys

import (
	_ "github.com/go-sql-driver/mysql"
)

type SysUser struct {
	ID           uint      `gorm:"primarykey"` // 主键ID
	CreateTime   int       `json:"create_time" gorm:"comment:创建时间"`
	UpdateTime   int       `json:"update_time" gorm:"comment:更新时间"`
	DeleteTime   int       `json:"delete_time" gorm:"default:0;comment:删除时间"`
	Username     string    `json:"userName" gorm:"index;comment:用户登录名"` // 用户登录名
	PasswordHash string    `json:"-" gorm:"comment:密码"`
	Name         string    `json:"name" gorm:"comment:用户昵称"`
	Salt         string    `json:"salt" gorm:"comment:加盐值"`
	Sex          int       `json:"sex" gorm:"default:1;comment:用户性别 1男 2女"` //用户是否被冻结 1正常 2冻结
	Img          string    `json:"img" gorm:"comment:用户头像"`                 // 用户头像
	Desc         string    `json:"desc" gorm:"comment:描述"`
	Status       int       `json:"status" gorm:"default:1;comment:用户是否被冻结 1正常 2冻结"` //用户是否被冻结 1正常 2冻结
	Wechat       string    `json:"wechat" gorm:"comment:用户wx"`
	Qq           string    `json:"qq" gorm:"comment:用户qq"`
	Email        string    `json:"email" gorm:"comment:用户邮箱"`
	Mobile       string    `json:"mobile" gorm:"comment:用户手机号"`
	RoleId       uint      `json:"role_id" gorm:"comment:角色id"`
	Role         SysRole   `json:"role" gorm:"foreignKey:RoleId;references:RoleId;comment:用户角色"`
	Roles        []SysRole `json:"roles" gorm:"many2many:sys_user_role;"`
}

func (SysUser) TableName() string {
	return "sys_user"
}
